package stbm.objects;

import stbm.guihelpers.GameSpecifics;
import java.util.Hashtable;

/**
 * Represents the Universe in the game, on a 150 by 100 board
 * 
 * @author Nirav
 * @author Nisha
 * 
 */
public class Universe {

	public Hashtable<String, Planet> planets;

	public Planet curPlanet;

	/**
	 * Creates a new Universe and adds the 4 main planets to the Universe
	 */
	public Universe() {

		planets = new Hashtable<String, Planet>();

		planets.put("Rojo", new Planet("Rojo", "Agriculture", new Resource(
				"MINERALRICH"), new Resource("LOTSOFWATER"), new TradeGood(
				"furs", 250.00, 250), new TradeGood("food", 100.00, 100),
				GameSpecifics.ROJO_DISTANCE));

		planets.put("Azul", new Planet("Azul", "Early-Industrial",
				new Resource("DESERT"), new Resource("Early-Industrial"),
				new TradeGood("furs", 250.00, 250), new TradeGood("ore",
						350.00, 350), GameSpecifics.AZUL_DISTANCE));

		planets.put("Amarillo", new Planet("Amarillo", "Industrial",
				new Resource("RICHSOIL"), new Resource("LIFELESS"),
				new TradeGood("games", 250.00, 50), new TradeGood("firearms",
						1250.00, 50), GameSpecifics.AMARILLO_DISTANCE));

		planets.put("Verde", new Planet("Verde", "Post-Industrial",
				new Resource("ARTISTIC"), new Resource("LOTSOFHERBS"),
				new TradeGood("medicine", 650.00, 150), new TradeGood(
						"machines", 900.00, 150), GameSpecifics.VERDE_DISTANCE));

		planets.put("Naranja", new Planet("Naranja", "High-Tech", new Resource(
				"WEIRDMUSHROOMS"), new Resource("RICHFAUNA"), new TradeGood(
				"narcotics", 3500.00, 50),
				new TradeGood("robots", 5000.00, 20),
				GameSpecifics.NARANJA_DISTANCE));

		curPlanet = planets.get("Azul");

	}

	/*
	 * prints out the info on planets
	 * 
	 */
	public int test() {
		for (Planet planetInfo : planets.values()) {
			System.out.println(planetInfo + "\n");

		}
		return 1;
	}

}
